package pl.edu.agh.gp.nodes.math;

import org.apache.commons.math.stat.descriptive.DescriptiveStatistics;
import org.jgap.InvalidConfigurationException;
import org.jgap.gp.impl.GPConfiguration;
import pl.edu.agh.gp.nodes.AbstractNode;

public class Kurtosis extends AbstractNode {
    public Kurtosis(final GPConfiguration a_conf, int initialArity, int maxArity, Class childType) throws InvalidConfigurationException {
        super(a_conf, initialArity, maxArity, "Kurtosis", childType);
    }

    protected double performMathCalculations(DescriptiveStatistics stats) {
        return stats.getKurtosis();
    }

    protected Object localClone() throws InvalidConfigurationException {
        return new Mean(getGPConfiguration(), getArity(null), getArityMax(), getChildType(null, 0));
    }
}
